<%# locals: (message:, description: nil) %>

<%= tag.div class: "relative flex gap-3 rounded-lg bg-container p-4 group w-full md:max-w-80 shadow-border-xs",
            data: {
              controller: "element-removal",
              action: "animationend->element-removal#remove"
            } do %>
  <div class="h-5 w-5 shrink-0 p-px text-primary">
    <div class="flex h-full items-center justify-center rounded-full bg-success">
      <%= icon "check", size: "xs", color: "white" %>
    </div>
  </div>

  <div class="space-y-4">
    <div class="space-y-1">
      <%= tag.p message, class: "text-primary text-sm font-medium" %>

      <% if description %>
        <%= tag.p description, class: "text-secondary text-sm" %>
      <% end %>
    </div>
  </div>

  <div class="ml-auto">
    <div class="h-5 shrink-0">
      <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg" class="shrink-0">
        <path d="M18 10C18 14.4183 14.4183 18 10 18C5.58172 18 2 14.4183 2 10C2 5.58172 5.58172 2 10 2C14.4183 2 18 5.58172 18 10ZM3.6 10C3.6 13.5346 6.46538 16.4 10 16.4C13.5346 16.4 16.4 13.5346 16.4 10C16.4 6.46538 13.5346 3.6 10 3.6C6.46538 3.6 3.6 6.46538 3.6 10Z" fill="#E5E5E5" />
        <circle class="origin-center -rotate-90 animate-stroke-fill" stroke="#141414" stroke-opacity="0.4" r="7.2" cx="10" cy="10" stroke-dasharray="43.9822971503" stroke-dashoffset="43.9822971503" />
      </svg>
    </div>
  </div>

  <div class="absolute -top-2 -right-2">
    <%= icon "x", class: "p-0.5 hidden group-hover:inline-block border border-alpha-black-50 border-solid rounded-lg bg-container text-subdued cursor-pointer", data: { action: "click->element-removal#remove" } %>
  </div>
<% end %>
